package xyz.lwm.lazycat.transaction.execute;

import lombok.Data;

/**
 * 事务定义
 *
 * @author lwm
 */
@Data
public class TranDefinition {

    /**
     * 事务传播特性
     */
    private final Propagation propagation;

    /**
     * 事务隔离级别
     */
    private final Isolation isolation;

    /**
     * 是否只读事务
     */
    private final boolean readOnly;

    /**
     * 事务回滚异常列表;
     * 注意: 即使为空, 默认回滚 IOException 和 Error
     */
    private final Class<? extends Throwable>[] rollbackFor;

}
